home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / programs / host22.zip / HOST.DOC next >
Text File  |  1992-04-04  |  37KB  |  798 lines

  1.  
  2.  
  3.  
  4.                                HOST 2.2
  5.  
  6.                       Miniature BBS host program
  7.  
  8.  
  9.                                   by
  10.  
  11.                                Bob Eyer
  12.                              [73230,2620]
  13.  
  14.                              April 4, 1992
  15.  
  16.  
  17.  
  18.      ──────────────── SEE SHAREWARE NOTICE BELOW ──────────────────────
  19.          For a fee, the author will modify program for custom
  20.                              applications.
  21.  
  22.  
  23.      ══════════════════════ FEATURES OF HOST ══════════════════════════
  24.  
  25.      - Uses very little disk space, and less than 50K memory
  26.  
  27.      - Can be run 'right out of the box' with no configuration at all
  28.  
  29.      - Two types of local Sysop logon
  30.  
  31.      - ESC key abort to terminate online caller
  32.  
  33.      - User specifiable rings to answer on
  34.  
  35.      - Ringback option - user selectable wait time
  36.  
  37.      - Chat
  38.  
  39.      - Messaging
  40.  
  41.      - File transfer, typing files
  42.  
  43.      - Sysop shell to DOS - Available only to registered users
  44.  
  45.      - Caller log inspection for Sysop - Registered users only
  46.  
  47.      - Expert/novice menu and prompt modes
  48.  
  49.      - Automatic wipe minor prompts at or above 1200 baud
  50.  
  51.      - Ctrl-K/X (abort)
  52.  
  53.      - Selectable timelimit for non-Sysop callers
  54.  
  55.      - 2-minute prompt inactivity logoff
  56.  
  57.      - RTS/CTS hardware handshaking for maximum speed
  58.  
  59.      - In event string pool problems, ejects to DOS with
  60.        error level 2, for batch file reprocessing.
  61.  
  62.      ═════════════════════════════════════════════════════════════════
  63.  
  64.      Syntax
  65.      ------
  66.  
  67.      HOST [port baud] [LOCAL BUL]
  68.  
  69.  
  70.      port     The number of the communications port to be made  active.
  71.               HOST   is  capable  of  identifying  ports  1-4,  without
  72.               supplementary specification of IRQ lines and addresses.
  73.  
  74.               If not mentioned, HOST defaults to 1.
  75.  
  76.      baud     The  baud  rate at which to open the communications port.
  77.               If not mentioned, HOST  defaults  to  9600.   Valid  baud
  78.               rates are 300, 1200, 2400, 9600, and 19200.
  79.  
  80.               If  19200  is  selected,  HOST will assume the modem is a
  81.               USRobotics Courier HST or Dual Standard,  and  will  send
  82.               &B1  &N8  to  the  modem to fix the modem to the DTE (the
  83.               communications  port),  unless  the  user  overrides   by
  84.               specifying a new value of FIXED in the HOST.CFG file (see
  85.               below).   In  such  case, remote must call at same speed.
  86.               Under such conditions, the modem/DTE link will operate at
  87.               14.4k baud.  Caveat: HOST's default response to  a  19200
  88.               fixed baud setting assumes that the default NRAM1 setting
  89.               contains  either  &M4  or  &M5.   USR fixed baud settings
  90.               require operation at least at level 4.
  91.  
  92.               At  9600  or  below,  HOST sends &B0, &M4, and &N0 to the
  93.               modem, so that it will follow the caller's connect  rate,
  94.               unless the user overrides the NRAM settings in HOST.CFG.
  95.  
  96.               HOST   does  not,  in  its  default  configuration,  save
  97.               commands to the modem's NRAM, but resets  modem  settings
  98.               to their previous states on exit.  As a result, it is not
  99.               necessary   to  reconfigure  your  dialling  program  for
  100.               dialling out, after using HOST - unless you add &W to new
  101.               values for NRAM1 or NRAM2.
  102.  
  103.      LOCAL    A commandline keyword which specifies that HOST is to  be
  104.               run without communicating with the modem at all, for test
  105.               or illustration purposes.
  106.  
  107.               The  user  may  see how HOST works for the first time and
  108.               without a modem, just by entering the command
  109.  
  110.               HOST LOCAL
  111.  
  112.               The  host  may  also be run by the Sysop in local mode by
  113.               pressing the Esc key after HOST is in  WAITING  FOR  RING
  114.               mode.     However,   this   mode   does   involve   modem
  115.               communications, and will abort if a modem is not properly
  116.               connected to your selected communications port.
  117.  
  118.      BUL      A  commandline  keyword which specifies that the HOST.MSG
  119.               file is to be displayed as  a  bulletin  for  the  caller
  120.               before he or she reaches the Main Menu.  Useful primarily
  121.               where the Sysop anticipates a particular caller and wants
  122.               to display some instructions which might be needed by his
  123.               caller.
  124.  
  125.      Commandline keywords must appear  AFTER  the  numeric  parameters,
  126.      port and baud, where listed at all.
  127.  
  128.      Example:  HOST
  129.  
  130.      will  open  COM1  at 9600 baud, No parity, 8 bits, 1 stop bit, and
  131.      will function so as to enable callers to connect.  The caller will
  132.      not see HOST.MSG before the Main Menu, since BUL is not mentioned.
  133.  
  134.      'HOST 2400' opens COM1 at 2400 baud.
  135.  
  136.      'HOST 3' opens COM3 at 9600 baud, if COM3 exists.
  137.  
  138.  
  139.      Discussion
  140.      ----------
  141.      I  wrote  this  program chiefly as a very small BBS for occasional
  142.      use, particularly for situations in which  someone  wants  a  file
  143.      from  me, but doesn't want to go the roundabout route of having me
  144.      post on a large BBS for subsequent download.  This  procedure  has
  145.      pitfalls  - such as whether I and my party are members of the same
  146.      BBS, and whether that facility offers private file transfers.
  147.  
  148.      The largest problem with most host programs in occasional  use  is
  149.      that  they  require  the  user  to  refresh  his  memory on how to
  150.      configure them.  This is often  a  colossal  waste  of  time,  and
  151.      impractical for occasional use.
  152.  
  153.      Another problem is disk space.  Keeping  a  fully  configured  BBS
  154.      system  on  one's  hard drive can mean wasting 2 or 3 megabytes of
  155.      space or more.   This  is  inappropriate  for  software  which  is
  156.      intended to be used only once in a while.
  157.  
  158.      RBBS, PCBoard, Wildcat, and other programs have long been  in  the
  159.      "large host" category; and so they just don't fill the need.
  160.  
  161.      Minihost,  now  known  as  Maxihost,  was  originally designed for
  162.      occasional use, but has long since developed into a  host  of  the
  163.      medium to large variety, intended for 24 hour operation.
  164.  
  165.      There  are  a  number  of  other small hosts, such as TinyHost and
  166.      JaxHost, which aim at the needs of the occasional user.
  167.  
  168.      However, even these programs are large compared to HOST, and still
  169.      require the user to check through the configuration  about  files,
  170.      directories, user names, passwords, security levels, and so forth.
  171.      All  this  stuff  is  liable to be inappropriate and forgotten, by
  172.      the time the software is used on the next occasion.
  173.  
  174.      In  addition,  most  of  the top dialling programs, such as TELIX,
  175.      BOYAN, and QMODEM, provide a script language so that the user  may
  176.      write his own host.  However, the disadvantage of this approach is
  177.      that  it is generally unsuitable for users who don't wish to learn
  178.      script languages.
  179.  
  180.  
  181.      In contrast to all these programs, HOST 2.2 can be run IMMEDIATELY
  182.      by any owner of a low speed  Hayes-compatible  modem,  or  a  high
  183.      speed  USRobotics  Courier HST or Dual Standard, with assurance of
  184.      connect on the first ring, unless  the  user  specifies  rings  to
  185.      answer on and/or ringback mode (see below about HOST.CFG).
  186.  
  187.      There are only a few things to remember:
  188.  
  189.      - You  must  know  which  port your modem is connected to, and the
  190.        maximum speed.  If different from HOST's defaults, use the  ones
  191.        that  apply.  Do NOT enter a baud rate on the command line which
  192.        exceeds the maximum rating of your installed modem.  See  Syntax
  193.        above.
  194.  
  195.      - If you don't want to specify your  file  transfer  directory  in
  196.        HOST.CFG,  HOST will assume that it is the root directory of the
  197.        current drive.  Files visible to the caller must  be  either  of
  198.        reset  or  archive attribute status.  Files which are read-only,
  199.        hidden, or system will not be displayed.
  200.  
  201.      - If  available,  HOST  uses three files which should be kept in a
  202.        separate directory: HOST.CFG, HOST.LOG, and HOST.MSG.   Each  of
  203.        these  files  is  an  ASCII  text file, intelligible to any text
  204.        editor  or  wordprocessor.   The   LOG   and   MSG   files   are
  205.        automatically generated by HOST, and require no maintenance.
  206.  
  207.        The  HOST.CFG file will probably be most important in specifying
  208.        your secret code name, which gives you alone Sysop access to the
  209.        DOS SHELL and the Inspect callers-log function.  See below about
  210.        how to set up a CFG file.
  211.  
  212.        Where  a  CFG  file is not specified, HOST will assume all users
  213.        have the same security, and no one will get access to DOS or the
  214.        caller log.
  215.  
  216.      - HOST does not have any internal protocols for file transfer, but
  217.        takes for granted that the user has a registered copy  of  Chuck
  218.        Forsberg's DSZ.COM, located somewhere in the DOS path.  The four
  219.        protocols  which  HOST  presents as choices all assume access to
  220.        DSZ.  HOST shells out to DSZ and automatically sets up  the  DSZ
  221.        commandline,  conformable  to  the  user's  selected option, and
  222.        DSZ's  syntax.   File  transfer  does  not  involve  setting  up
  223.        special batch files.
  224.  
  225.        In the event DSZ.COM or DSZ.EXE is not found in the DOS path (or
  226.        in HOST's local directory), HOST simply returns to the Main menu
  227.        without apparent effect to a caller.  However, at the host  end,
  228.        the  message  'Bad command or filename' will be displayed by DOS
  229.        in such an event.
  230.  
  231.      - HOST  does not check caller names against a user list.  Everyone
  232.        except the Sysop has the same security  level.   Since  HOST  is
  233.        designed  only  to  be  run occasionally, there is no need for a
  234.        userlist.  However, HOST does write out caller names  to  a  log
  235.        file  called  HOST.LOG.   The dates and times, together with the
  236.        name  given  by  the  caller  should  generally  be  more   than
  237.        sufficient for occasional use.
  238.  
  239.        In addition, HOST's monitoring function will write to HOST.LOG a
  240.        short  descriptions  of  the caller's activities.
  241.  
  242.  
  243.      ══════════════════════════════════════════════════════════════════
  244.      NOTE:  You  can run HOST IMMEDIATELY at the root directory WITHOUT
  245.      ANY CONFIGURATION AT ALL, and, if the files  needed  for  transfer
  246.      are there, your caller should be able to pick them up.
  247.      ══════════════════════════════════════════════════════════════════
  248.  
  249.  
  250.  
  251.      FINE TUNING - HOST.CFG
  252.      ----------------------
  253.      This  file has a very simple structure.  It is based on the use of
  254.      11 keywords: SYSOP, LOGON,  DELAY,  LIMIT,  RBACK,  RINGS,  FPATH,
  255.      NRAM1,  NRAM2,  MINIT,  and FIXED.  The space character is used to
  256.      associate each keyword with its intended value.   All  values  are
  257.      read  as  strings,  so don't use quotes.  The order in which these
  258.      variables are defined in HOST.CFG is immaterial; HOST will  figure
  259.      out which is which.
  260.  
  261.      SYSOP         - Your secret name, as the Sysop (no length limit).
  262.                      The default is no Sysop  name,  and  so  no  Sysop
  263.                      privilege.   If SYSOP is defined in HOST.CFG, then
  264.                      the caller logging on with  this  name  will  have
  265.                      access   to  the  shell  and  user  log  functions
  266.                      (available only to registered users).
  267.  
  268.      LOGON         - This is the message your  caller  will  see  first
  269.                      after establishing connect with HOST.  The default
  270.                      is not to print a logon message at all.
  271.  
  272.      FPATH         - The  drive-directory  where  file  transfer  takes
  273.                      place.   If  not mentioned, this variable defaults
  274.                      to '\' -  that  is,  the  root  directory  of  the
  275.                      current drive.
  276.  
  277.      DELAY         - The  delay  time,  in   seconds,   between   modem
  278.                      commands.  In command  mode  (when  no  caller  is
  279.                      online),   instructions  sent  to  the  modem  are
  280.                      followed by responses from the modem.  If commands
  281.                      are sent too  quickly,  they  won't  be  received,
  282.                      since  some  of  them  may  occur during the modem
  283.                      reply.  The default of HOST  is  1  second,  which
  284.                      should  generally be adequate to prevent this kind
  285.                      of effect on USR Couriers.  However, you may  find
  286.                      it  necessary  to  set  the  DELAY at 2 or 3.
  287.  
  288.      LIMIT         - A  non-Sysop  caller's  session  time limit.  HOST
  289.                      prescribes no time limit for any person  who  logs
  290.                      on  with the Sysop's secret name (see above).  All
  291.                      other callers have a time limit assigned by LIMIT.
  292.                      HOST's default is 20 (minutes).
  293.  
  294.      RBACK         - The number of seconds the host should wait  before
  295.                      recycling  to  receive  the  caller's  second ring
  296.                      sequence.  If this  number  is a positive integer,
  297.                      ringback mode is automatically assumed by HOST.
  298.  
  299.                      HOST  does  not  make  any  use  of hardware modem
  300.                      ringback  technology,   but,   instead,   controls
  301.                      ringback processing entirely from within HOST.  As
  302.                      a result, the user may define any kind of ringback
  303.                      mode  he  wishes,  with ringback wait (the minimum
  304.                      interval between the  caller's  first  and  second
  305.                      call)  set  anywhere between 10 and 32767 seconds.
  306.                      Usually, the  appropriate  setting  should  be  at
  307.                      least  10  seconds.   The  standard  length of the
  308.                      telephone ring cycle is about 6 seconds; and a few
  309.                      additional seconds are necessary to distinguish  a
  310.                      new  ring  cycle  from  merely the next one in the
  311.                      same cycle.
  312.  
  313.                      Where  RBACK  is  omitted or is non-positive, HOST
  314.                      deactivates ring-back mode.
  315.  
  316.      RINGS         - The number of rings which must occur  before  HOST
  317.                      will make connect with a caller.  Again, HOST does
  318.                      not  make use of modem technology here but handles
  319.                      the ring problem entirely at the software level.
  320.  
  321.                      Where RINGS is omitted or  set  to  0,  HOST  will
  322.                      attempt a connect on detection of the leading edge
  323.                      of the first ring (i.e.  answer on "zero rings").
  324.  
  325.      NRAM1,  NRAM2,  MINIT,  and   FIXED   are   modem   initialisation
  326.      variables.   You  may see illustrations of these strings simply by
  327.      running
  328.  
  329.      HOST LOCAL
  330.  
  331.      They are summarised below the initial help screen.
  332.  
  333.      All  these  initialisation strings have default values supplied by
  334.      HOST.  But each may be varied by the user as experiment  warrants,
  335.      by  supplying  the  relevant  variable and associated value in the
  336.      HOST.CFG file.
  337.  
  338.      FIXED is the only initialisation variable that behaves differently
  339.      from  the  other  three:  The  purpose of FIXED is to override the
  340.      other settings when 19200 is used on the  HOST  commandline.   The
  341.      purpose  here  is  to set up a USR Courier HST or Dual Standard to
  342.      receive fixed baud calls at 19200, so as to achieve throughput  of
  343.      14400  baud.   The  supplied defaults should do this; but, if fine
  344.      tuning is necessary, the  default  value  of  FIXED  can  be  made
  345.      subject to the user's own override values.
  346.  
  347.      Sample HOST.CFG file:
  348.      --------------------
  349.  
  350.      SYSOP DD334RTM_2
  351.      LOGON SAM'S PLACE
  352.      DELAY 2
  353.      LIMIT 30
  354.  
  355.      In  this  example,  the  Sysop's secret name for logon purposes is
  356.      DD334RTM_2, the logon message  will  be  SAM'S  PLACE,  the  modem
  357.      command  delay  is  set  at  2 seconds, and non-Sysop callers will
  358.      receive a maximum of 30 minutes online.
  359.  
  360.  
  361.      The advantage of a program like HOST is that  the  user  can  park
  362.      HOST.EXE  and HOST.DOC in his pathed \UTIL directory, and then run
  363.      the program from anywhere.  For example, on some other drive,  the
  364.      user  may  wish  to  keep  a  small subdirectory called \JOHN, for
  365.      communications with, say, John Somebody, who prefers  to  call  at
  366.      19200  baud.   The  directory  would  contain  a  batch file which
  367.      automatically  specifies  the  loading  of  HOST  with  the  19200
  368.      parameter,  so  that  John  can  get  14.4k  speed  downloads.  In
  369.      addition, all the control files will be written in that directory,
  370.      if the batch file is run from there.
  371.  
  372.      Obviously  other  small  directories could be set up as well.
  373.  
  374.  
  375.      The  space  and  human memory saving advantage here is large.  The
  376.      program, docs, and other small directories might  occupy  no  more
  377.      than 60k.  And very few details need be attended to, so as to make
  378.      HOST operational.
  379.  
  380.      Use of the Shell function
  381.      -------------------------
  382.      There are two main reasons why a person running a BBS should never
  383.      provide general caller access to  DOS  through  a  shell  or  exit
  384.      function.  (1) Any caller could do great damage to the software on
  385.      his  or her computer, and (2) callers who are not knowledgeable on
  386.      the use of shells in communications environments could easily hang
  387.      up the operation of the BBS by doing something that would  prevent
  388.      them  from  exiting  out of DOS level.  A few notes should be made
  389.      about this second danger.
  390.  
  391.         (a) Normally,  when  BBS operators arrange for the use of a DOS
  392.             shell, they do it by having the BBS program specify a batch
  393.             file to execute the functions intended, and this batch file
  394.             will call some kind of watchdog utility  which  causes  the
  395.             host  computer  to  reboot  in  the  event of a prematurely
  396.             dropped carrier.
  397.  
  398.             The main reason  for  the  watchdog  utility  is  that,  if
  399.             carrier  is  lost,  the  caller  will be denied any further
  400.             control over processing.  If no program is resident,  which
  401.             can automatically restore the BBS, it will simply hang, and
  402.             no  other  user will be able to log on, until the condition
  403.             of the computer is fixed by the Sysop.
  404.  
  405.             An arbitrary shell function for Sysops does not provide any
  406.             such utility; so if you call your own host and drop to DOS,
  407.             you could make a simple mistake and cause  your  system  to
  408.             hang  - unless you MANUALLY call a watchdog utility as soon
  409.             as you are  at  DOS  level.   Watchdog  utilities  do  not,
  410.             however,  work  equally well on all types of computers - so
  411.             the risk of hang when drop to DOS  occurs  is  still  quite
  412.             substantial even for the Sysop.
  413.  
  414.         (b) Certain keys, such as the backspace key, and  perhaps  even
  415.             the cursor keys, may cause infinite loops to develop at DOS
  416.             level,  unless the codes for these keys are redefined.  For
  417.             example,  using  ASCII  8  for  the  backspace  key  in   a
  418.             communications   shell   often   causes   infinite  looping
  419.             behaviour, which cannot be stopped.  These  kinds  of  keys
  420.             should  be  redefined  by using your modem S-registers (the
  421.             backspace key is S5), or avoided altogether.
  422.  
  423.             DON'T use any keys at DOS level,  except  the  numbers  and
  424.             letters  of  the  alphabet.   Any  deviation from this rule
  425.             could cause your host computer to hang, while  you  are  at
  426.             DOS level within a shell.
  427.  
  428.             If  you  must  use  DOS  while  online,  use  it through an
  429.             applications program whose  output  is  redirectable  to  a
  430.             communications   port,   and   which  itself  has  internal
  431.             carrier protection.
  432.  
  433.             Direct  access  to  DOS  in  a  communications  session  is
  434.             strictly for techies only!
  435.  
  436.             But,  it is made available here, chiefly for the benefit of
  437.             knowledgeable users of communications  programs  who  would
  438.             like  to  take  advantage  of  all  that  free memory space
  439.             (generally, more than 500K) which HOST makes possible.
  440.  
  441.      Noise
  442.      -----
  443.      Generally, when run on error-correcting modems like the line of US
  444.      Robotics Couriers, noise is rarely a serious problem.  The problem
  445.      arises when a BBS is run  in  non-error  correcting  environments.
  446.      Any  line noise is liable to cause communications to break down or
  447.      be seriously interrupted.  HOST limits this problem  by  filtering
  448.      all  strings transmitted through the echo function of prompts.  In
  449.      particular, the filter passes only those  characters  whose  ASCII
  450.      value  is  less  than 127 at speeds lower than 9600 baud.  At 9600
  451.      baud or above, HOST assumes the modem is of  the  error-correcting
  452.      variety, and so does no filtering.  This filtering process applies
  453.      to  all  echoing  to  remote at opportunities for user input - for
  454.      example, in chat, or in message entry.   It  follows  that,  where
  455.      filtering  is  active,  HOST  does  not  permit remote upload of a
  456.      graphics message to the Enter Note function.
  457.  
  458.      Errors
  459.      ------
  460.      HOST  2.2  supports  error  detection,  much  of which is used for
  461.      internal reprocessing (such as error handling when the CTS line is
  462.      dropped), and is  of  no  interest  to  the  user.   However,  the
  463.      following errors have diagnostic importance:
  464.  
  465.      - Modem not connected to port or modem turned off
  466.  
  467.        This occurs when the modem status register has a value less than
  468.        16, or when the ring and carrier bits are simultaneously set.
  469.  
  470.        Please let me know if your modem is otherwise  operational,  but
  471.        you  cannot  get past this message.  HOST 2.2 will report to you
  472.        the MSR value on your screen at run time.  I have tested HOST on
  473.        a number of different kinds of modems with successful results on
  474.        this error condition, but admit that  I  don't  have  exhaustive
  475.        information about all modems.
  476.  
  477.        This  error condition is an attempt to deal with a problem which
  478.        many communications programs simply ignore, with the result that
  479.        they simply hang the computer, if the modem is not connected  or
  480.        electrically  turned  off.
  481.  
  482.  
  483.      - Illegal baud rate
  484.  
  485.        If you select a baud rate not supported by  HOST,  this  message
  486.        will  occur,  returning  you  to DOS.  HOST will inform you what
  487.        baud rates are legal.
  488.  
  489.  
  490.      - Wrong port, wrong baud, or hardware problem
  491.  
  492.        This  message  occurs if HOST encounters any error while opening
  493.        the communications port.  For example, if you select  2  on  the
  494.        commandline   for   the  port,  and  your  machine  only  has  a
  495.        communications  card that supports COM1:, this error will occur.
  496.        It may also occur if you have a hardware problem - for  example,
  497.        if  your  communications  card  needs  to  be  reseated  on  the
  498.        motherboard, or perhaps you should do a cold boot because  of  a
  499.        lost  bit  somewhere  in  RAM.   Try  rebooting  if this message
  500.        occurs.  If that doesn't work, open up your machine  WITH  POWER
  501.        OFF and try reseating your communications card.  Of course, make
  502.        sure  you're  using  the right port and baud on the commandline,
  503.        when the machine is afterwards TURNED ON and rebooted.
  504.  
  505.        If  all  this  fails  to  make  HOST  get past this message, you
  506.        probably have an electrically defective communications card.
  507.  
  508.  
  509.      - STRING SPACE CORRUPT; Please call back in about 20 seconds
  510.  
  511.        This  error  may  occur  when  HOST's  string  pool  has  become
  512.        corrupt.  HOST  automatically  puts  the  phone  line  off-hook,
  513.        closes  the communications port, and exits to DOS with DOS error
  514.        level 2, when this circumstance occurs.  The appropriate  action
  515.        is merely to start HOST again from DOS, and this can be arranged
  516.        automatically by making direct use of HOST's exit code.
  517.  
  518.        Since  HOST  allocates far more space (16K) than it needs (about
  519.        4K), the user may never see this error occur.  But, if  HOST  is
  520.        used  as a 24-hour BBS, the activating batch file should take it
  521.        account, in order to avoid losing the host  on  rare  occasions.
  522.        For  example,  the  following statements in the activating batch
  523.        file would do the trick:
  524.  
  525.        :START
  526.        HOST 2
  527.        IF ERRORLEVEL 2 GOTO START
  528.  
  529.        In  this  case  HOST's  commandline  indicates  that the port is
  530.        number 2, and that the modem supports speeds  up  to  9600  (the
  531.        default if the baud rate is not specified).
  532.  
  533.  
  534.      LOGGING OFF AND RECYCLING
  535.      -------------------------
  536.      HOST  2.2  reports inter-session processing on the local screen as
  537.      it proceeds, so you can see where any error  occurs.
  538.  
  539.      One important problem that may develop, but for which HOST has  no
  540.      error  detection,  occurs when a caller logs off but HOST does not
  541.      drop his carrier - thus forcing him to drop carrier at  the  other
  542.      end.  This fault is due to the fact that the switches of the modem
  543.      which  HOST  is  using  are  set to force the DTR line high at all
  544.      times.
  545.  
  546.      HOST drops the caller's carrier by dropping the local DTR line; if
  547.      the host modem does not respond to this command, the remote caller
  548.      will still be online.   The  caller  will  see  evidence  of  this
  549.      malfunction,  by  noting  that  his  line was not dropped after he
  550.      logged off, and that he sees on his screen the message to put  the
  551.      host line offhook (it won't really be offhook if the remote caller
  552.      sees   that  message).   As  a  result,  he'll  have  to  drop his
  553.      own carrier manually.
  554.  
  555.      Therefore,  do NOT operate HOST on a modem configured to force DTR
  556.      high at all times.  The 'force DTR high' switch should  be  turned
  557.      off.
  558.  
  559.      In Closing
  560.      ----------
  561.      Please feel free to offer any criticisms or  suggestions  you  may
  562.      have; I can be reached at Compuserve [73230,2620].
  563.  
  564.  
  565.      - Regards, Bob
  566.  
  567.  
  568.  
  569.  
  570.                         ** SHAREWARE NOTICE **
  571.  
  572.      This program is shareware: if you think it's a worthy addition  to
  573.      your  personal  software,  you  should  make a contribution to the
  574.      author.  In return for your contribution you will receive the most
  575.      recent updates of the items mentioned in the list below.
  576.  
  577.      Simply purchase a money order from your bank in the amount of  $20
  578.      US made out to Bob Eyer and send with your return address to:
  579.  
  580.        Bob Eyer
  581.        1100 Bloor Street West
  582.        Suite 16
  583.        Toronto, Canada M6H 1M8
  584.  
  585.      Please mention in your accompanying note whether you wish 5.25" or
  586.      3.5" diskette format,  and  state  the  name  in  which  you  wish
  587.      registration-only  utilities  to  be  registered.
  588.  
  589.      Do not send cheques.
  590.  
  591.      Enquiries may be placed by writing  directly  to  the  author  via
  592.      Easyplex at Compuserve [73230,2620].
  593.  
  594.      Warranty and Disclaimer:
  595.      -----------------------
  596.      The  author,  Bob  Eyer,  guarantees the physical integrity of the
  597.      diskette covering the points  above,  and  will  replace  free  of
  598.      charge, if it is received defective.  However, in no case will the
  599.      author  be  responsible for any damages due to loss of data or any
  600.      other reason.  In no event does the  author's  liability  for  any
  601.      damages  exceed  the  price  paid  for  the  buyer's order of this
  602.      software, regardless of the form of the claim.  The  person  using
  603.      the  software  bears all risk as to the quality and performance of
  604.      the software.
  605.  
  606.  
  607.     DESCRIPTION OF PROGRAMS YOU WILL RECEIVE FREE WITH YOUR REGISTRATION
  608.           ********************************************************
  609.  
  610.      Many  of the programs in the following list have not been publicly
  611.      posted, and those which have been posted previously  are  unlikely
  612.      to be posted in new updates, except in rare cases.
  613.  
  614.      Certain  programs  are  registered-only, which means that the user
  615.      must not post copies on bulletin boards.  Some of these have  also
  616.      never  been  posted  at  all, and are available ONLY to registered
  617.      users.
  618.  
  619.      Versions  new  since last public post are indicated with a + sign.
  620.      Entries marked by double asterisk have never been posted, and  are
  621.      available  only to registered users, copies which will contain the
  622.      user's name on the copy.
  623.  
  624.      Nearly   all  file-processing  programs  take  full  advantage  of
  625.      wildcard logic, including DOS  shortcuts,  keeping  keystrokes  to
  626.      absolute minimum.
  627.  
  628.      Total  size  in  compressed form for all of below, including docs:
  629.      about 320K.
  630.  
  631.   ** MG 3.0
  632.      ------
  633.      Moving average ASCII graphing program.   Especially  designed  for
  634.      obtaining  graphic  updates  on stock-market activity in practical
  635.      trading environments, in which it is essential that the user get a
  636.      quick  graph  immediately,  with  points  of  the  graph  directly
  637.      associated  with  the  numerical  and other text information which
  638.      these points represent (a feat  impractical  in  Lotus  graphics).
  639.      Designed to be used with SETV below.
  640.  
  641.    + SPC 5.4
  642.      -------
  643.      Multidrive columnar drive report, with fairly complete description
  644.      of  your  machine  including  communications,   important   chips,
  645.      printer,   BIOS,   memory,   processor   and   coprocessor  speed,
  646.      multitasking, networking, and so on, all in one  single  snapshot.
  647.      New   version   doubles   the   amount   of  information  on  each
  648.      communications port and displays the information in columnar  mode
  649.      above  the drive report, adds an environment usage readout as well
  650.      as a new P parameter to pause the PRINT multiplexer,  when  it  is
  651.      used  to  feed  data  to  your  printer.  (DOS PRINT lacks a pause
  652.      command).
  653.  
  654.      SETV 2.0
  655.      --------
  656.      Sets seven VGA text video modes.  Enables Multisync or VGA user to
  657.      make  use  of seven major video text modes at DOS level, including
  658.      132 column modes.
  659.  
  660.      HOST 2.2
  661.      --------
  662.      Provides   a   simple   BBS   host   for  occasional  use.   Fully
  663.      configurable, but capable of being run 'right  out  of  the  box',
  664.      HOST provides ringback, file transfer, mail, chat, userlog, shell,
  665.      and much more - in an executable only 27K in size.
  666.  
  667.      AL 2.3
  668.      ------
  669.      Best  and  most flexible TSR alarm program with clock option.  Has
  670.      time-locking and a full range of options.  7K of memory.
  671.  
  672.      CA 2.2
  673.      ------
  674.      Four-function fixed point TSR calculator with  formatted  displays
  675.      and  scientific  notation  for  direct  paste  to  text.  Also has
  676.      accumulator.  Four mode groups.  About 13K of memory.
  677.  
  678.    + CAF 2.2
  679.      -------
  680.      TSR floating point calculator with formatted displays  and  direct
  681.      paste  to  text.   18  functions,  and an accumulation area.  Five
  682.      types of modes.  Number formatting.  CAF is the most sophisticated
  683.      calculator  in  the  business,  for  its  size.   27K  of  memory.
  684.  
  685.      PAUZ 2.2
  686.      --------
  687.      Replacement for DOS PAUSE, allows specification of seconds to wait
  688.      or target [<=] time,  as  well  as  what  key  to  use  for  pause
  689.      interruption.  User triggering of error levels 1 to 9.
  690.  
  691.    + MV 2.6
  692.      ------
  693.      Fast  file  mover.   Preserves  date/time/attribute  stamp for all
  694.      moves.  Allows moving Read Only and  Hidden  files,  source  files
  695.      opened  in  SHAREd  mode  for  network  users.   Wildcards.   None
  696.      faster or safer.
  697.  
  698.   ** SPLT 2.1
  699.      --------
  700.      ASCII file splitter which, for the first time, offers the  ability
  701.      to  prevent  the  split  from resulting in split messages or other
  702.      defined  text  blocks.   Works  with  DIV  and  REV,  below.
  703.  
  704.   ** OTL 3.0
  705.      -------
  706.      Makes it  possible  to  apply  any  set  of  operations,  say,  as
  707.      specified in a batch file, to every file in an ASCII list, without
  708.      having to specify the path information for each file.  For Sysops.
  709.  
  710.   ** KALL 2.0
  711.      --------
  712.      For users of DOS 3.0-3.2 who would like batch  file  control  like
  713.      that   offered   in   the  more  advanced  DOS  versions.   Allows
  714.      redirection of batch file output, unlike DOS 4/5 CALL.
  715.  
  716.   ** SS 1.0
  717.      ------
  718.      Secure shell, protects  your  system  from  keyboard  redefinition
  719.      resulting from ANSI codes read in remote message areas.  Maintains
  720.      default DOS colour scheme, but requires use of NANSI.SYS.
  721.  
  722.      DIV 3.2
  723.      -------
  724.      Generalisation  of  FGREP-type programs to include blocks of text.
  725.      A single string defines a block in most kinds of  blockable  text.
  726.      DIV  handles  almost  any  kind.  Returns blocks containing one or
  727.      more of up to 64 different strings from large ASCII files.  Useful
  728.      in extracting messages or extended file descriptions containing  a
  729.      range of strings without manual cut and paste.  Can prepare a file
  730.      containing   every   block   EXCEPT   the   ones   selection,  and
  731.      simultaneously.   See REV in short list below.
  732.  
  733.      COMB 2.2
  734.      --------
  735.      Sorts and combines wildcard text files  in  specified  order  into
  736.      first  file  found  in  that order.  Primarily for eliminating the
  737.      tedium and error involved in accumulating message files  into  one
  738.      file  for  easy  reference.  Essential for systematic followers of
  739.      international correspondence forums.
  740.  
  741.      ADD 2.4
  742.      -------
  743.      Adds very lengthy columns of numbers found in ASCII text, such  as
  744.      byte  counts  in BBS listings without manual data entry.  (Capable
  745.      of handling the addition of up to 1 billion numbers in one pass).
  746.  
  747.      CITM 2.4
  748.      --------
  749.      Counts   similar   items  in  formatted  ASCII  lists,  where  the
  750.      similarity is based on a fixed string field found at one  position
  751.      in  each  line of text, and all lines have been previously sorted,
  752.      based on  the  contents  of  that  string  field.   Perfect  as  a
  753.      companion   utility   for  Baker's  QSORT.
  754.  
  755.    + FVER 2.0
  756.      --------
  757.      Compares  a  file  list,  like  a BBS listing, to the actual files
  758.      found anywhere in the BBS's download path.  Operates  in  FAST  or
  759.      SLOW mode, depending on your safety requirements.  Can be operated
  760.      remotely through a BBS door.
  761.  
  762.    + MVA 2.0
  763.      -------
  764.      Moves  files,  even if set to read only status, from anywhere in a
  765.      specified download path to a given location.  Operates directly on
  766.      ASCII lists, like directories or BBS listings.   Can  be  operated
  767.      remotely through a BBS door.
  768.  
  769.      RNF 2.1
  770.      -------
  771.      Minimises keystrokes and keystroke error on  renaming  files  with
  772.      date  or  time  info  or special flags.
  773.  
  774.      plus:
  775.      ----
  776.    + LF    - Linefeeds printer by user-supplied number of lines.
  777.    + PF    - Pagefeeds printer by user-supplied number of pages.
  778.    + DOSV  - Writes out major element of DOS version as error level.
  779.    + RING  - TSR ring detector for users who don't like phone rings.
  780.    + PORT  - TSR/non-TSR display of modem statistics for specific port.
  781.      ELIM  - Advanced replacement for DEL.
  782.    + EMS   - EMS detector for error level control in batch files.
  783.      LCNT  - Very fast linecounter; formatted output.
  784.      ESRT  - Element sorter.  User specified delimiter.
  785.    + TYME  - Program execution timer.
  786.      CHG   - Attribute file/directory/date/time  file  changer/reader.
  787.    + CBRO  - Compuserve Browse converter.  Old/new  formats.
  788.      REV   - Reverses order of blocks of text (messages, etc).
  789.      DTR   - Toggles modem DTR line.
  790.      RTS   - Toggles RTS line.
  791.   ** CFIX  - Fix cursor to normal, block or off.
  792.   ** EL    - Converts number to error level, for batch files.
  793.      WD    - Gives wildcard support to any program.
  794.      SWP   - Fast single-level sweep program.
  795.      TSTF  - Floppy disk status tester.
  796.      ----------------------
  797.      End of documentation
  798.